Bearer Token Authentication হল একটি জনপ্রিয় Authentication পদ্ধতি যা API-তে অ্যাক্সেস পাওয়ার জন্য access token ব্যবহার করে। এই ধরনের authentication-এ, HTTP request-এর header-এ একটি Bearer token পাঠানো হয়, যা সার্ভারকে ব্যবহারকারীর অনুমোদন নিশ্চিত করে। এই token সাধারণত OAuth 2.0 এর মাধ্যমে পাওয়া যায় এবং API-এ প্রবেশাধিকার নিশ্চিত করার জন্য ব্যবহার করা হয়।
Apache HTTP Client ব্যবহার করে Bearer Token Authentication হ্যান্ডল করা খুবই সহজ। এটি করার জন্য, আপনাকে Authorization header-এ Bearer <token>
পাঠাতে হবে।
HttpPost
বা HttpGet
এর headers-এ Authorization
নামক একটি header সেট করতে হবে।"Bearer <access_token>"
যেখানে <access_token>
হল আপনার Bearer token।import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.apache.http.client.methods.HttpUriRequestBase;
import org.apache.http.HttpHeaders;
public class ApacheHttpClientBearerTokenAuthExample {
public static void main(String[] args) {
// Bearer Token (Access Token)
String bearerToken = "your_bearer_token_here";
// API Endpoint URL
String url = "https://api.example.com/protected-resource";
// HttpClient তৈরি করা
try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
// HttpGet অবজেক্ট তৈরি
HttpUriRequestBase request = new HttpGet(url);
// Authorization header এ Bearer token পাঠানো
request.setHeader(HttpHeaders.AUTHORIZATION, "Bearer " + bearerToken);
// Request পাঠানো এবং Response গ্রহণ করা
HttpResponse response = httpClient.execute(request);
// Response থেকে স্ট্যাটাস কোড এবং কন্টেন্ট নেওয়া
int statusCode = response.getStatusLine().getStatusCode();
System.out.println("Response Code: " + statusCode);
HttpEntity responseEntity = response.getEntity();
if (responseEntity != null) {
String responseBody = EntityUtils.toString(responseEntity);
System.out.println("Response Body: " + responseBody);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
request.setHeader(HttpHeaders.AUTHORIZATION, "Bearer " + bearerToken)
: এই লাইনটি Authorization header তৈরি করে এবং সেখানে Bearer token পাঠায়। এখানে "Bearer "
এর পরে আপনার access token যোগ করতে হবে।HttpGet
request ব্যবহার করা হয়েছে, তবে আপনি HttpPost
, HttpPut
ইত্যাদি ব্যবহারও করতে পারেন, আপনার প্রয়োজন অনুযায়ী।EntityUtils.toString(responseEntity)
ব্যবহার করে response body রিড করা হয়েছে।আপনার Bearer token সাধারণত একটি OAuth 2.0 ফ্লো অনুসরণ করে প্রাপ্ত হয়। সাধারণত এটি একটি access token হয়, যা আপনি login অথবা API-এ প্রবেশের জন্য ব্যবহারকারীর অনুমোদন প্রক্রিয়ার মাধ্যমে অর্জন করেন।
Apache HTTP Client-এ Bearer Token Authentication হ্যান্ডল করা সহজ। আপনাকে কেবল Authorization
header-এ "Bearer <token>"
পাঠাতে হবে। এর মাধ্যমে আপনি নিরাপদভাবে API-তে প্রবেশাধিকার পেতে পারেন এবং এটি সাধারণত OAuth 2.0 ফ্লো অনুসরণ করে করা হয়। Bearer token-এর নিরাপত্তা নিশ্চিত করতে সবসময় HTTPS ব্যবহার করা উচিত।
common.read_more